home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / lib / perl / 5.10.0 / sys / cdefs.ph next >
Encoding:
Text File  |  2009-06-26  |  14.5 KB  |  367 lines

  1. require '_h2ph_pre.ph';
  2.  
  3. no warnings 'redefine';
  4.  
  5. unless(defined(&_SYS_CDEFS_H)) {
  6.     eval 'sub _SYS_CDEFS_H () {1;}' unless defined(&_SYS_CDEFS_H);
  7.     unless(defined(&_FEATURES_H)) {
  8.     require 'features.ph';
  9.     }
  10.     if(defined (defined(&__GNUC__) ? &__GNUC__ : undef)  && !defined (defined(&__STDC__) ? &__STDC__ : undef)) {
  11.     die("You need a ISO C conforming compiler to use the glibc headers");
  12.     }
  13.     undef(&__P) if defined(&__P);
  14.     undef(&__PMT) if defined(&__PMT);
  15.     if(defined(&__GNUC__)) {
  16.     if(!defined (defined(&__cplusplus) ? &__cplusplus : undef)  &&  &__GNUC_PREREQ (3, 3)) {
  17.         eval 'sub __THROW () { &__attribute__ (( &__nothrow__));}' unless defined(&__THROW);
  18.         eval 'sub __NTH {
  19.             my($fct) = @_;
  20.             eval q( &__attribute__ (( &__nothrow__)) $fct);
  21.         }' unless defined(&__NTH);
  22.     } else {
  23.         if(defined (defined(&__cplusplus) ? &__cplusplus : undef)  &&  &__GNUC_PREREQ (2,8)) {
  24.         eval 'sub __THROW () { &throw ();}' unless defined(&__THROW);
  25.         eval 'sub __NTH {
  26.             my($fct) = @_;
  27.                 eval q($fct  &throw ());
  28.         }' unless defined(&__NTH);
  29.         } else {
  30.         eval 'sub __THROW () {1;}' unless defined(&__THROW);
  31.         eval 'sub __NTH {
  32.             my($fct) = @_;
  33.                 eval q($fct);
  34.         }' unless defined(&__NTH);
  35.         }
  36.     }
  37.     } else {
  38.     eval 'sub __inline () {1;}' unless defined(&__inline);
  39.     eval 'sub __THROW () {1;}' unless defined(&__THROW);
  40.     eval 'sub __NTH {
  41.         my($fct) = @_;
  42.             eval q($fct);
  43.     }' unless defined(&__NTH);
  44.     eval 'sub __const () { &const;}' unless defined(&__const);
  45.     eval 'sub __signed () {\'signed\';}' unless defined(&__signed);
  46.     eval 'sub __volatile () { &volatile;}' unless defined(&__volatile);
  47.     }
  48.     eval 'sub __P {
  49.         my($args) = @_;
  50.         eval q($args);
  51.     }' unless defined(&__P);
  52.     eval 'sub __PMT {
  53.         my($args) = @_;
  54.         eval q($args);
  55.     }' unless defined(&__PMT);
  56.     eval 'sub __CONCAT {
  57.         my($x,$y) = @_;
  58.         eval q($x  $y);
  59.     }' unless defined(&__CONCAT);
  60.     eval 'sub __STRING {
  61.         my($x) = @_;
  62.         eval q($x);
  63.     }' unless defined(&__STRING);
  64.     eval 'sub __ptr_t () { &void *;}' unless defined(&__ptr_t);
  65.     eval 'sub __long_double_t () {\'long double\';}' unless defined(&__long_double_t);
  66.     if(defined(&__cplusplus)) {
  67.     eval 'sub __BEGIN_DECLS () { &extern "C" {;}' unless defined(&__BEGIN_DECLS);
  68.     eval 'sub __END_DECLS () {};}' unless defined(&__END_DECLS);
  69.     } else {
  70.     eval 'sub __BEGIN_DECLS () {1;}' unless defined(&__BEGIN_DECLS);
  71.     eval 'sub __END_DECLS () {1;}' unless defined(&__END_DECLS);
  72.     }
  73.     if(defined (defined(&__cplusplus) ? &__cplusplus : undef)  && defined (defined(&_GLIBCPP_USE_NAMESPACES) ? &_GLIBCPP_USE_NAMESPACES : undef)) {
  74.     eval 'sub __BEGIN_NAMESPACE_STD () { &namespace  &std {;}' unless defined(&__BEGIN_NAMESPACE_STD);
  75.     eval 'sub __END_NAMESPACE_STD () {};}' unless defined(&__END_NAMESPACE_STD);
  76.     eval 'sub __USING_NAMESPACE_STD {
  77.         my($name) = @_;
  78.             eval q( &using  &std::$name;);
  79.     }' unless defined(&__USING_NAMESPACE_STD);
  80.     eval 'sub __BEGIN_NAMESPACE_C99 () { &namespace  &__c99 {;}' unless defined(&__BEGIN_NAMESPACE_C99);
  81.     eval 'sub __END_NAMESPACE_C99 () {};}' unless defined(&__END_NAMESPACE_C99);
  82.     eval 'sub __USING_NAMESPACE_C99 {
  83.         my($name) = @_;
  84.             eval q( &using  &__c99::$name;);
  85.     }' unless defined(&__USING_NAMESPACE_C99);
  86.     } else {
  87.     eval 'sub __BEGIN_NAMESPACE_STD () {1;}' unless defined(&__BEGIN_NAMESPACE_STD);
  88.     eval 'sub __END_NAMESPACE_STD () {1;}' unless defined(&__END_NAMESPACE_STD);
  89.     eval 'sub __USING_NAMESPACE_STD {
  90.         my($name) = @_;
  91.             eval q();
  92.     }' unless defined(&__USING_NAMESPACE_STD);
  93.     eval 'sub __BEGIN_NAMESPACE_C99 () {1;}' unless defined(&__BEGIN_NAMESPACE_C99);
  94.     eval 'sub __END_NAMESPACE_C99 () {1;}' unless defined(&__END_NAMESPACE_C99);
  95.     eval 'sub __USING_NAMESPACE_C99 {
  96.         my($name) = @_;
  97.             eval q();
  98.     }' unless defined(&__USING_NAMESPACE_C99);
  99.     }
  100.     unless(defined(&__BOUNDED_POINTERS__)) {
  101.     eval 'sub __bounded () {1;}' unless defined(&__bounded);
  102.     eval 'sub __unbounded () {1;}' unless defined(&__unbounded);
  103.     eval 'sub __ptrvalue () {1;}' unless defined(&__ptrvalue);
  104.     }
  105.     eval 'sub __bos {
  106.         my($ptr) = @_;
  107.         eval q( &__builtin_object_size ($ptr,  &__USE_FORTIFY_LEVEL > 1));
  108.     }' unless defined(&__bos);
  109.     eval 'sub __bos0 {
  110.         my($ptr) = @_;
  111.         eval q( &__builtin_object_size ($ptr, 0));
  112.     }' unless defined(&__bos0);
  113.     if( &__GNUC_PREREQ (4,3)) {
  114.     eval 'sub __warndecl {
  115.         my($name, $msg) = @_;
  116.             eval q( &extern  &void $name ( &void)  &__attribute__(( &__warning__ ($msg))));
  117.     }' unless defined(&__warndecl);
  118.     eval 'sub __warnattr {
  119.         my($msg) = @_;
  120.             eval q( &__attribute__(( &__warning__ ($msg))));
  121.     }' unless defined(&__warnattr);
  122.     eval 'sub __errordecl {
  123.         my($name, $msg) = @_;
  124.             eval q( &extern  &void $name ( &void)  &__attribute__(( &__error__ ($msg))));
  125.     }' unless defined(&__errordecl);
  126.     } else {
  127.     eval 'sub __warndecl {
  128.         my($name, $msg) = @_;
  129.             eval q( &extern  &void $name ( &void));
  130.     }' unless defined(&__warndecl);
  131.     eval 'sub __warnattr {
  132.         my($msg) = @_;
  133.             eval q();
  134.     }' unless defined(&__warnattr);
  135.     eval 'sub __errordecl {
  136.         my($name, $msg) = @_;
  137.             eval q( &extern  &void $name ( &void));
  138.     }' unless defined(&__errordecl);
  139.     }
  140.     if( &__GNUC_PREREQ (2,97)) {
  141.     eval 'sub __flexarr () {[];}' unless defined(&__flexarr);
  142.     } else {
  143.     if(defined(&__GNUC__)) {
  144.         eval 'sub __flexarr () {[0];}' unless defined(&__flexarr);
  145.     } else {
  146.         if(defined (defined(&__STDC_VERSION__) ? &__STDC_VERSION__ : undef)  && (defined(&__STDC_VERSION__) ? &__STDC_VERSION__ : undef) >= 199901) {
  147.         eval 'sub __flexarr () {[];}' unless defined(&__flexarr);
  148.         } else {
  149.         eval 'sub __flexarr () {[1];}' unless defined(&__flexarr);
  150.         }
  151.     }
  152.     }
  153.     if(defined (defined(&__GNUC__) ? &__GNUC__ : undef)  && (defined(&__GNUC__) ? &__GNUC__ : undef) >= 2) {
  154.     eval 'sub __REDIRECT {
  155.         my($name, $proto, $alias) = @_;
  156.             eval q(\\"(assembly code)\\");
  157.     }' unless defined(&__REDIRECT);
  158.     if(defined(&__cplusplus)) {
  159.         eval 'sub __REDIRECT_NTH {
  160.             my($name, $proto, $alias) = @_;
  161.             eval q(\\"(assembly code)\\");
  162.         }' unless defined(&__REDIRECT_NTH);
  163.     } else {
  164.         eval 'sub __REDIRECT_NTH {
  165.             my($name, $proto, $alias) = @_;
  166.             eval q(\\"(assembly code)\\");
  167.         }' unless defined(&__REDIRECT_NTH);
  168.     }
  169.     eval 'sub __ASMNAME {
  170.         my($cname) = @_;
  171.             eval q( &__ASMNAME2 ( &__USER_LABEL_PREFIX__, $cname));
  172.     }' unless defined(&__ASMNAME);
  173.     eval 'sub __ASMNAME2 {
  174.         my($prefix, $cname) = @_;
  175.             eval q( &__STRING ($prefix) $cname);
  176.     }' unless defined(&__ASMNAME2);
  177.     }
  178.     if(!defined (defined(&__GNUC__) ? &__GNUC__ : undef) || (defined(&__GNUC__) ? &__GNUC__ : undef) < 2) {
  179.     eval 'sub __attribute__ {
  180.         my($xyz) = @_;
  181.             eval q();
  182.     }' unless defined(&__attribute__);
  183.     }
  184.     if( &__GNUC_PREREQ (2,96)) {
  185.     eval 'sub __attribute_malloc__ () { &__attribute__ (( &__malloc__));}' unless defined(&__attribute_malloc__);
  186.     } else {
  187.     eval 'sub __attribute_malloc__ () {1;}' unless defined(&__attribute_malloc__);
  188.     }
  189.     if( &__GNUC_PREREQ (2,96)) {
  190.     eval 'sub __attribute_pure__ () { &__attribute__ (( &__pure__));}' unless defined(&__attribute_pure__);
  191.     } else {
  192.     eval 'sub __attribute_pure__ () {1;}' unless defined(&__attribute_pure__);
  193.     }
  194.     if( &__GNUC_PREREQ (3,1)) {
  195.     eval 'sub __attribute_used__ () { &__attribute__ (( &__used__));}' unless defined(&__attribute_used__);
  196.     eval 'sub __attribute_noinline__ () { &__attribute__ (( &__noinline__));}' unless defined(&__attribute_noinline__);
  197.     } else {
  198.     eval 'sub __attribute_used__ () { &__attribute__ (( &__unused__));}' unless defined(&__attribute_used__);
  199.     eval 'sub __attribute_noinline__ () {1;}' unless defined(&__attribute_noinline__);
  200.     }
  201.     if( &__GNUC_PREREQ (3,2)) {
  202.     eval 'sub __attribute_deprecated__ () { &__attribute__ (( &__deprecated__));}' unless defined(&__attribute_deprecated__);
  203.     } else {
  204.     eval 'sub __attribute_deprecated__ () {1;}' unless defined(&__attribute_deprecated__);
  205.     }
  206.     if( &__GNUC_PREREQ (2,8)) {
  207.     eval 'sub __attribute_format_arg__ {
  208.         my($x) = @_;
  209.             eval q( &__attribute__ (( &__format_arg__ ($x))));
  210.     }' unless defined(&__attribute_format_arg__);
  211.     } else {
  212.     eval 'sub __attribute_format_arg__ {
  213.         my($x) = @_;
  214.             eval q();
  215.     }' unless defined(&__attribute_format_arg__);
  216.     }
  217.     if( &__GNUC_PREREQ (2,97)) {
  218.     eval 'sub __attribute_format_strfmon__ {
  219.         my($a,$b) = @_;
  220.             eval q( &__attribute__ (( &__format__ ( &__strfmon__, $a, $b))));
  221.     }' unless defined(&__attribute_format_strfmon__);
  222.     } else {
  223.     eval 'sub __attribute_format_strfmon__ {
  224.         my($a,$b) = @_;
  225.             eval q();
  226.     }' unless defined(&__attribute_format_strfmon__);
  227.     }
  228.     if( &__GNUC_PREREQ (3,3)) {
  229.     eval 'sub __nonnull {
  230.         my($params) = @_;
  231.             eval q( &__attribute__ (( &__nonnull__ $params)));
  232.     }' unless defined(&__nonnull);
  233.     } else {
  234.     eval 'sub __nonnull {
  235.         my($params) = @_;
  236.             eval q();
  237.     }' unless defined(&__nonnull);
  238.     }
  239.     if( &__GNUC_PREREQ (3,4)) {
  240.     eval 'sub __attribute_warn_unused_result__ () { &__attribute__ (( &__warn_unused_result__));}' unless defined(&__attribute_warn_unused_result__);
  241.     if((defined(&__USE_FORTIFY_LEVEL) ? &__USE_FORTIFY_LEVEL : undef) > 0) {
  242.         eval 'sub __wur () { &__attribute_warn_unused_result__;}' unless defined(&__wur);
  243.     }
  244.     } else {
  245.     eval 'sub __attribute_warn_unused_result__ () {1;}' unless defined(&__attribute_warn_unused_result__);
  246.     }
  247.     unless(defined(&__wur)) {
  248.     eval 'sub __wur () {1;}' unless defined(&__wur);
  249.     }
  250.     if( &__GNUC_PREREQ (3,2)) {
  251.     eval 'sub __always_inline () { &__inline  &__attribute__ (( &__always_inline__));}' unless defined(&__always_inline);
  252.     } else {
  253.     eval 'sub __always_inline () { &__inline;}' unless defined(&__always_inline);
  254.     }
  255.     if(!defined (defined(&__cplusplus) ? &__cplusplus : undef) ||  &__GNUC_PREREQ (4,3)) {
  256.     if(defined (defined(&__GNUC_STDC_INLINE__) ? &__GNUC_STDC_INLINE__ : undef) || defined (defined(&__cplusplus) ? &__cplusplus : undef)) {
  257.         eval 'sub __extern_inline () { &extern  &__inline  &__attribute__ (( &__gnu_inline__));}' unless defined(&__extern_inline);
  258.         if( &__GNUC_PREREQ (4,3)) {
  259.         eval 'sub __extern_always_inline () { &extern  &__always_inline  &__attribute__ (( &__gnu_inline__,  &__artificial__));}' unless defined(&__extern_always_inline);
  260.         } else {
  261.         eval 'sub __extern_always_inline () { &extern  &__always_inline  &__attribute__ (( &__gnu_inline__));}' unless defined(&__extern_always_inline);
  262.         }
  263.     } else {
  264.         eval 'sub __extern_inline () { &extern  &__inline;}' unless defined(&__extern_inline);
  265.         eval 'sub __extern_always_inline () { &extern  &__always_inline;}' unless defined(&__extern_always_inline);
  266.     }
  267.     }
  268.     if( &__GNUC_PREREQ (4,3)) {
  269.     eval 'sub __va_arg_pack () {
  270.         eval q( &__builtin_va_arg_pack ());
  271.     }' unless defined(&__va_arg_pack);
  272.     eval 'sub __va_arg_pack_len () {
  273.         eval q( &__builtin_va_arg_pack_len ());
  274.     }' unless defined(&__va_arg_pack_len);
  275.     }
  276.     if(! &__GNUC_PREREQ (2,8)) {
  277.     eval 'sub __extension__ () {1;}' unless defined(&__extension__);
  278.     }
  279.     if(! &__GNUC_PREREQ (2,92)) {
  280.     eval 'sub __restrict () {1;}' unless defined(&__restrict);
  281.     }
  282.     if( &__GNUC_PREREQ (3,1)  && !defined (defined(&__GNUG__) ? &__GNUG__ : undef)) {
  283.     eval 'sub __restrict_arr () { &__restrict;}' unless defined(&__restrict_arr);
  284.     } else {
  285.     if(defined(&__GNUC__)) {
  286.         eval 'sub __restrict_arr () {1;}' unless defined(&__restrict_arr);
  287.     } else {
  288.         if(defined (defined(&__STDC_VERSION__) ? &__STDC_VERSION__ : undef)  && (defined(&__STDC_VERSION__) ? &__STDC_VERSION__ : undef) >= 199901) {
  289.         eval 'sub __restrict_arr () { &restrict;}' unless defined(&__restrict_arr);
  290.         } else {
  291.         eval 'sub __restrict_arr () {1;}' unless defined(&__restrict_arr);
  292.         }
  293.     }
  294.     }
  295.     require 'bits/wordsize.ph';
  296.     if(defined (defined(&__LONG_DOUBLE_MATH_OPTIONAL) ? &__LONG_DOUBLE_MATH_OPTIONAL : undef)  && defined (defined(&__NO_LONG_DOUBLE_MATH) ? &__NO_LONG_DOUBLE_MATH : undef)) {
  297.     eval 'sub __LDBL_COMPAT () {1;}' unless defined(&__LDBL_COMPAT);
  298.     if(defined(&__REDIRECT)) {
  299.         eval 'sub __LDBL_REDIR1 {
  300.             my($name, $proto, $alias) = @_;
  301.             eval q( &__REDIRECT ($name, $proto, $alias));
  302.         }' unless defined(&__LDBL_REDIR1);
  303.         eval 'sub __LDBL_REDIR {
  304.             my($name, $proto) = @_;
  305.             eval q( &__LDBL_REDIR1 ($name, $proto,  &__nldbl_$name));
  306.         }' unless defined(&__LDBL_REDIR);
  307.         eval 'sub __LDBL_REDIR1_NTH {
  308.             my($name, $proto, $alias) = @_;
  309.             eval q( &__REDIRECT_NTH ($name, $proto, $alias));
  310.         }' unless defined(&__LDBL_REDIR1_NTH);
  311.         eval 'sub __LDBL_REDIR_NTH {
  312.             my($name, $proto) = @_;
  313.             eval q( &__LDBL_REDIR1_NTH ($name, $proto,  &__nldbl_$name));
  314.         }' unless defined(&__LDBL_REDIR_NTH);
  315.         eval 'sub __LDBL_REDIR1_DECL {
  316.             my($name, $alias) = @_;
  317.             eval q( &extern  &__typeof ($name) $name  &__asm ( &__ASMNAME ($alias)););
  318.         }' unless defined(&__LDBL_REDIR1_DECL);
  319.         eval 'sub __LDBL_REDIR_DECL {
  320.             my($name) = @_;
  321.             eval q( &extern  &__typeof ($name) $name  &__asm ( &__ASMNAME (\\"__nldbl_\\" $name)););
  322.         }' unless defined(&__LDBL_REDIR_DECL);
  323.         eval 'sub __REDIRECT_LDBL {
  324.             my($name, $proto, $alias) = @_;
  325.             eval q( &__LDBL_REDIR1 ($name, $proto,  &__nldbl_$alias));
  326.         }' unless defined(&__REDIRECT_LDBL);
  327.         eval 'sub __REDIRECT_NTH_LDBL {
  328.             my($name, $proto, $alias) = @_;
  329.             eval q( &__LDBL_REDIR1_NTH ($name, $proto,  &__nldbl_$alias));
  330.         }' unless defined(&__REDIRECT_NTH_LDBL);
  331.     }
  332.     }
  333.     if(!defined (defined(&__LDBL_COMPAT) ? &__LDBL_COMPAT : undef) || !defined (defined(&__REDIRECT) ? &__REDIRECT : undef)) {
  334.     eval 'sub __LDBL_REDIR1 {
  335.         my($name, $proto, $alias) = @_;
  336.             eval q($name $proto);
  337.     }' unless defined(&__LDBL_REDIR1);
  338.     eval 'sub __LDBL_REDIR {
  339.         my($name, $proto) = @_;
  340.             eval q($name $proto);
  341.     }' unless defined(&__LDBL_REDIR);
  342.     eval 'sub __LDBL_REDIR1_NTH {
  343.         my($name, $proto, $alias) = @_;
  344.             eval q($name $proto  &__THROW);
  345.     }' unless defined(&__LDBL_REDIR1_NTH);
  346.     eval 'sub __LDBL_REDIR_NTH {
  347.         my($name, $proto) = @_;
  348.             eval q($name $proto  &__THROW);
  349.     }' unless defined(&__LDBL_REDIR_NTH);
  350.     eval 'sub __LDBL_REDIR_DECL {
  351.         my($name) = @_;
  352.             eval q();
  353.     }' unless defined(&__LDBL_REDIR_DECL);
  354.     if(defined(&__REDIRECT)) {
  355.         eval 'sub __REDIRECT_LDBL {
  356.             my($name, $proto, $alias) = @_;
  357.             eval q( &__REDIRECT ($name, $proto, $alias));
  358.         }' unless defined(&__REDIRECT_LDBL);
  359.         eval 'sub __REDIRECT_NTH_LDBL {
  360.             my($name, $proto, $alias) = @_;
  361.             eval q( &__REDIRECT_NTH ($name, $proto, $alias));
  362.         }' unless defined(&__REDIRECT_NTH_LDBL);
  363.     }
  364.     }
  365. }
  366. 1;
  367.